专利摘要:
本開示では、JPEG規格に従って符号化された画像などの符号化画像を回転させる技術について説明する。一例では、符号化画像の指定された回転に従って符号化画像の最小符号化単位(MCU)を並べ替えることと、指定された回転に従ってMCU内の画像データを回転させることと、並べ替えられたMCUとMCU内の回転された画像データとを含む符号化画像の回転バージョンを生成することと、を含む符号化画像を回転させる方法を提供する。
公开号:JP2011515039A
申请号:JP2010546932
申请日:2009-02-13
公开日:2011-05-12
发明作者:ホワン、ハウ;リ、シアン−ツン;リウ、シジョン
申请人:クゥアルコム・インコーポレイテッドQualcomm Incorporated;
IPC主号:H04N1-41
专利说明:

[0001] 本開示は画像処理に関し、より詳しくは符号化画像を回転させる技術に関する。]
背景技術

[0002] デジタルカメラは、通常、多種多様なデバイスに組み込まれている。本開示では、デジタルカメラデバイスは静止画像をキャプチャすることができるデバイスおよびビデオを記録するために画像のシーケンスをキャプチャすることができるデバイスを含む、1つまたは複数のデジタル画像をキャプチャすることができる任意のデバイスを指す。例として、デジタルカメラデバイスは独立型デジタルカメラまたはデジタルビデオカムコーダ、モバイル電話、セルラー電話、衛星無線電話などのカメラ付き無線通信デバイスハンドセット、カメラ付き携帯情報端末(PDA)、いわゆる「ウェブカム」などのカメラを含むコンピュータデバイス、あるいはデジタルイメージング機能またはビデオ機能をもつ任意のデバイスを含み得る。]
[0003] JPEGは、一般的に使用される画像圧縮方法である。JPEGという名称は、規格を作成した委員会の名称であるJoint Photographic Experts Groupを表す。JPEG符号化プロセスは、いくつかのステップを含む。第1に、画像の画素を赤、緑および青(RGB)から、輝度(brightness)を表す1つの輝度(luma)成分(Y)と色(color)を表す2つの色(chroma)成分(CbおよびCr)とを含むYCbCrに変換する。]
[0004] 次に、人の目が精細な色ディテールに対してよりも精細な輝度ディテールに対して感度が低いことを反映するために、クロマデータの解像度を例えば通常は1/2に低下する。次いで、画像を8×8画素のブロックに分割し、各ブロックのY、CbおよびCrデータの各々を離散コサイン変換(DCT)する。次いで、周波数成分の振幅を量子化する。人の視覚は、高周波輝度の強さの変動に対してよりも、広いエリアにわたる色または輝度の変動に対してより敏感なので、高周波成分の大きさは低周波成分よりも低い精度で記憶される。エンコーダの品質設定は、各周波数成分の分解能の範囲を制御するように調整できる。極端に低い品質設定を使用すると、高周波成分が全面的に廃棄されることがある。]
[0005] DCTプロセスの後、例えば差分符号化技術、およびジグザグ走査、ハフマン符号化、ランレングス符号化、可変長符号化(VLC)方法、符号化ブロックパターン(CBP)の適用などのエントロピー符号化技術を使用して、すべての8×8ブロックの得られたデータをさらに圧縮する。復号プロセスは、様々なJPEG符号化ステップを逆転させて、ディスプレイを駆動するために使用できる一連の画素値を再生する。]
[0006] 多くのイメージングアプリケーションでは、画像の回転が望ましい。例えば、90度回転されたカメラによって画像をキャプチャする場合、画像がディスプレイに出力されるときに画像が回転しないように、画像データを回転させることが望ましい場合がある。従来では画像を復号し、復号された画像を画素領域で回転させ、次いで回転された画像を再符号化することによって、符号化されたJPEG画像を回転させる。この従来の技術は、回転の前および後に圧縮されていない画像の1つまたは複数のコピーの一時記憶および圧縮された画像の記憶を必要とするので、きわめてメモリ集約的(memory intensive)である。]
[0007] 本開示では、JPEG規格に従って符号化された画像などの符号化画像を回転させる技術について説明する。符号化画像は、複数の最小符号化ユニット(MCU)を含み得る。一例では、MCUは離散コサイン変換によって画素の8×8ブロックから符号化された離散コサイン変換(DCT)係数のブロックを含むことができる。本開示によれば、MCUをDCT領域から画素領域に十分に復号することなしに画像を回転させる。特に、画像をDCT領域において回転させることができ、本開示ではDCT領域におけるそのような回転を可能にするプロセスを提案する。場合によっては、MCUの各々の低周波(DC)成分に対して差分復号を適用することができるが、その場合はデータが回転されるときMCUの高周波(AC)成分がDCT領域に残る。]
[0008] 本開示によれば、最初にMCUが元の符号化画像に対して回転された順序で配置されるように、MCUを並べ替える。次いで、各MCU内のデータを回転させる。このようにして、DCT係数のすべてを画素形式に復号することなしに、符号化画像の回転バージョンを生成する。MCUの並べ替えを単純化できる、MCUをインデキシングする技術についても説明する。さらに、符号化画像にファイルサイズ制約を適用する機会として画像回転プロセスを使用することなどの追加の技術について説明する。この場合、元の画像をファイルサイズ制約なしで符号化し、回転された画像をファイルサイズ制約付きで符号化することができる。概して、本明細書で説明する画像回転プロセスは、ファイルサイズ制約の適用など、いくつかの追加の符号化ステップを実行する機会を与えることができる。]
[0009] 一例では、本開示は符号化画像の指定された(specified)回転に従って符号化画像のMCUを並べ替えることと、指定された回転に従ってMCU内の画像データを回転させることと、並べ替えられたMCUとMCU内の回転された画像データとを含む符号化画像の回転バージョンを生成することとを具備する、符号化画像を回転させる方法を提供する。]
[0010] 別の例では、本開示は符号化画像を記憶するメモリと、符号化画像をメモリから受け取り、符号化画像の指定された回転に従って符号化画像のMCUを並べ替え、指定された回転に従ってMCU内の画像データを回転させ、並べ替えられたMCUとMCU内の回転された画像データとを含む符号化画像の回転バージョンを生成する回転トランスコーダとを具備する装置を提供する。]
[0011] 別の例では、本開示は符号化画像の指定された回転に従って符号化画像のMCUを並べ替える手段と、指定された回転に従ってMCU内の画像データを回転させる手段と、並べ替えられたMCUとMCU内の回転された画像データとを含む符号化画像の回転バージョンを生成する手段とを具備するデバイスを提供する。]
[0012] 本明細書で説明するこれらおよび他の技術は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組合せにおいて実施できる。ソフトウェアで実装した場合、ソフトウェアは汎用マイクロプロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のタイプのプロセッサなどのプロセッサで実行され得る。そのようなソフトウェアは、最初に、符号化画像の回転を可能にするためにコンピュータ可読媒体に記憶され、プロセッサにロードされ、実行され得る。]
[0013] 従って、本開示は、実行時に、プロセッサに符号化画像の指定された回転に従って符号化画像のMCUを並べ替えることと、指定された回転に従ってMCU内の画像データを回転させることと、並べ替えられたMCUとMCU内の回転された画像データとを含む符号化画像の回転バージョンを生成することとを行わせる命令を具備するコンピュータ可読媒体をも企図する。]
[0014] 1つまたは複数の実施形態の詳細を添付の図面および以下の説明に記載する。他の特徴、目的および利点は、説明および図面ならびに特許請求の範囲から明らかになろう。]
図面の簡単な説明

[0015] 本開示の技術を実装可能な例示的なイメージングデバイスを示すブロック図。
画像を回転させるために使用できる構成要素を示すブロック図。
画像を回転させるために使用できる構成要素を示すブロック図。
本開示の技術に合致する、画像を回転させるために使用できる構成要素を示すブロック図。
本開示の技術に合致する、画像を回転させるために使用できる構成要素を示すブロック図。
本開示に合致する、画像を回転させる技術を示すフローチャート。
本開示に合致する、画像を回転させる技術を示すフローチャート。
MCUに従ってインデキシングされた画像を示す概念図。
本開示に合致する、画像を回転させる技術を示す別のフローチャート。]
実施例

[0016] 本開示では、符号化画像を回転させる技術について説明する。一例として、符号化画像(encoded image)はJoint Photographic Experts Group(JPEG)規格に従って符号化された画像を含み得るが、本開示の技術は他の画像圧縮規格に適用可能である。本開示の技術は、静止画像、またはビデオシーケンスのフレームを含む符号化画像を回転させるために使用され得る。ユーザがカメラデバイスを横方向(landscape)に向けたか縦方向(portrait orientation)に向けたたかにかかわらず、同じ走査線順で画像データが生成されるデジタルカメラデバイスでは、しばしば回転が必要である。これらの向きの少なくとも1つについて、90度、180度または270度の回転が望まれることがある。]
[0017] 符号化画像は、複数の最小符号化単位(minimum coded units)(MCU)を含み得る。MCUは、離散コサイン変換(DCT)プロセスによって符号化されたデータのブロックなど、符号化されたデータのブロックを含み得る。この場合、MCUは画像の画素ブロックから符号化されたDCT係数のブロックを含み得る。本開示は、そのようなMCUをDCT領域から画素領域に復号する必要なしに画像回転を容易にする技術を提供する。例えば、画像はDCT領域において回転され得、本開示はそのような回転を容易にできる効果的なプロセスを提案する。場合によっては、所定のMCUの低周波(いわゆる「DC」)成分に対して差分符号化を使用した場合、DC成分に対する差分符号化が復号され得る。ただし、この場合にはAC係数は画素領域に復号されず、画像回転が行われるとAC係数がDCT領域に残る。]
[0018] 本開示によれば、MCUが元の符号化画像に対して回転された順序で配置されるように、指定された回転に従ってMCUを並べ替える。このMCUの並べ替えを可能にするために、本開示ではインデキシング方式を利用する。例えば、JPEG規格に従って符号化画像に関連するリスタートマーカ値を1に設定する。この結果、各DCT符号化されたMCUは、JPEG画像の独立して復号可能な単位を形成する。MCUが元の符号化画像に対して回転された順序で配置されるように、各MCUをインデキシングし、インデキシングに基づいて並べ替えられた形でMCUをフェッチする。次いで、指定された回転に従って各MCU内のデータを回転させる。このようにして、DCT係数の一部または全部を画素形式に復号することなしに、DCT技術によって符号化されたMCUを含む符号化画像を回転させることができる。説明した技術は、画像回転に関連するメモリ要件(memory requirements)を著しく低減することができる。さらに、本明細書では、符号化画像にファイルサイズ制約を適用する機会として画像回転プロセスを使用することなど、追加の技術を開示する。この場合、元の符号化画像をファイルサイズ制約なしで符号化し、回転された画像をファイルサイズ制約付きで符号化する。ファイルサイズ制約の適用は、元の符号化画像に対する回転された画像の圧縮を生じるかもしれない。]
[0019] 図1は、本開示の技術を実装する例示的なデジタルカメラデバイス2を示すブロック図である。例として、デジタルカメラデバイス2は独立型デジタルカメラ、デジタルビデオカムコーダ、セルラー電話や衛星無線電話などのカメラ付き無線通信デバイスハンドセット、カメラ付き携帯情報端末(PDA)、デジタルカメラやウェブカムなどを装備したコンピュータデバイス、あるいはイメージング機能またはビデオ機能をもつ任意の他のデバイスを含み得る。本開示の技術は、メモリが制限され、電力消費が重要であるカメラ付き無線通信デバイスハンドセットなどにおける無線アプリケーションにこの上なく適用可能である。] 図1
[0020] 図1に示すように、デバイス2は画像をキャプチャするカメラ12を含む。キャプチャされた画像は、スチール写真、またはビデオシーケンスの画像フレームを含み得る。後者の場合、本開示の技術はビデオシーケンスの各画像フレームに連続的に使用され得る。JPEGコーダ14は、エンコーダまたは複合(combined)エンコーダ/デコーダ(コーデック)を含むことができる。JPEGコーダ14は、キャプチャされた画像をJPEG圧縮規格に従ってリアルタイムで符号化することができる。このようにして、JPEGコーダ14はキャプチャされた画像に基づいて符号化画像を生成し、符号化画像はJPEG規格に従って圧縮される。] 図1
[0021] メモリ16は、符号化画像を記憶する。所望される場合、ディスプレイ20は画像の復号バージョンをユーザに表示することができる。JPEGコーダ14は、画素データをディスプレイ20が提示することができるように、符号化画像の復号を可能にすることもできる。ディスプレイ20は、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイ、または画像をユーザに提示することが可能な任意のディスプレイなど、任意のタイプのディスプレイを含むことができる。いくつかの例では、ディスプレイ20はデバイス2のビューファインダディスプレイを含み得る。データ通信バス15は、デバイス2の異なる構成要素間のデータ転送を可能にする。ただし、場合によってはカメラ12を専用のバスを介してJPEGエンコーダ14に結合することができ、JPEGエンコーダ14は画像が受信されたときに、いわゆる「インライン」符号化を実行することができる。この場合、本明細書で説明する回転トランスコーディングは、画像回転が必要とされる場合はいつでも自動的に実行されるインラインプロセスと見なすこともできる。そのような回転は、画像キャプチャ中にユーザ入力に基づいて、または場合によってはカメラ12の向きに基づいて、必要とされると判断され得る。]
[0022] デバイス2は、多くの他の構成要素を含むこともできる。例えば、デバイス2がモバイル電話ハンドセットなどの無線通信デバイスである場合、デバイス2はそのような無線通信を可能にするためにアンテナ、送信機、受信機および変調器などの様々な構成要素を含むことができる。ただし、これらの追加の構成要素は、説明を簡単で容易にするために図1から省略されている。] 図1
[0023] 本開示によれば、デバイス2は本開示による画像回転を可能にする回転トランスコーダ18を含む。そのために、回転トランスコーダ18は符号化画像のMCUの並べ替えおよび画像データの回転が符号化画像の回転バージョンを生成するように、それらのMCUを並べ替え、MCU内の画像データを回転させる。符号化画像の回転バージョンを生成した後、回転トランスコーダ18は符号化画像の回転バージョンをメモリ16に出力することができる。MCUは、JPEG規格に従って符号化されたDCT係数のブロックを含み得る。]
[0024] 回転トランスコーダ18は、メモリ16から符号化画像をフェッチすることができ、符号化画像は1つまたは複数のエントロピー符号化技術によって符号化される。回転トランスコーダ18は、MCUを並べ替えるより前に符号化画像をエントロピー復号してMCUを生成し、符号化画像の回転バージョンを出力するより前に1つまたは複数のエントロピー符号化技術に従って符号化画像の回転バージョンをエントロピー符号化する。このようにして、回転トランスコーダ18は、エントロピー符号化を除去するために符号化画像の部分復号(partial decode)を行うことはできるが、符号化画像のDCTについては復号しない。代わりに、回転トランスコーダ18は符号化画像を実質的にDCT領域において回転させ、次いで回転された画像にエントロピー符号化を再適用する。DCT係数の低周波(DC)成分に対して差分符号化を使用した場合、回転トランスコーダ18は差分符号化をなくすることができるようにDCT係数のDC成分を復号する。ただし、この場合には所定のMCUに関連するDCT係数のAC成分が画像回転プロセスのためにDCT領域に残ることがある。]
[0025] 回転トランスコーダ18は、場合によっては並べ替えられたMCUを処理する際に、ファイルサイズ制御パラメータを適用することができる。この場合、符号化画像の回転バージョンはファイルサイズ制御パラメータに適合する。例えば、符号化画像の回転バージョンはファイルサイズ制御パラメータに適合するように最初の符号化画像に対して圧縮され得る。ファイルサイズ制御パラメータの適用は、一般に最初のJPEG符号化プロセスの後に第2の符号化プロセスを必要とする。本開示の技術は、回転トランスコーディングの一部としてファイルサイズ制御パラメータを適用するための変更を提供することができる。これにより、ファイルサイズ制御パラメータを適用するために通常ならば必要とされる別個の符号化プロセスをなくすことができる。代わりに、本開示は画像の回転を行うことと、画像にファイルサイズ制御パラメータを適用することの両方のために、(最初のJPEG符号化プロセスの後に)単一の符号化プロセスを使用することができる。]
[0026] 回転トランスコーダ18は、符号化画像にリスタートマーカ値1を割り当て、リスタートマーカ値に基づいてMCUをインデキシングし、インデキシングに基づいてMCUを並べ替えることによって、MCUを再符号化することができる。JPEGによるリスタートマーカ値は、JPEGファイルをより弾力的にするように設計された値を指す。リスタートマーカ値を定義することによって、MCUのセットを独立して復号することができるので、MCUの1つのセットにおいてエラーが生じた場合、そのようなエラーはMCUの他のセットに伝搬しない。符号化画像にリスタートマーカ値1を割り当てることによって、各DCT符号化されたMCUは、JPEG画像の独立して復号可能な単位を形成する。各MCUはインデキシングすることができ、回転トランスコーダ18は、MCUが元の符号化画像に対して回転された順序で配置されるように、インデキシングに基づいて並べ替えられた形でMCUをフェッチする。次いで、回転トランスコーダ18は各MCU内のデータを回転させる。符号化画像の回転バージョンは、並べ替えられたMCUとMCUの各々の回転されたデータとを含む。]
[0027] 回転トランスコーダ18は、MCU内の画像データを回転させる際に2つ以上の演算(operation)を行う。例えば、回転トランスコーダ18はMCUの係数値に対して垂直反転演算を行い、垂直反転されたMCUの係数値に対して転置演算を行う。この結果、90度時計回りの画像回転を生じることができる。別の例では、回転トランスコーダ18は、MCUの係数値に対して垂直反転演算を行い、垂直反転されたMCUの係数値に対して水平反転演算を行う。これは、180度時計回りの画像回転をもたらすことができる。]
[0028] 別の例では、回転トランスコーダ18はMCUの係数値に対して水平反転演算を行い、水平反転されたMCUの係数値に対して垂直反転演算を行う。これは、180度反時計回りの画像回転をもたらすことができる。別の例では、回転トランスコーダ18は、MCUの係数値に対して転置演算を行い、転置されたMCUの係数値に対して垂直反転演算を行う。これは、270度時計回りの画像回転をもたらすことができる。回転トランスコーダ18は、カメラ12に関連する画像キャプチャ状態に基づいて自動的に決定されるか、またはデバイス2の入力ユニット(図示せず)を介して入力としてユーザから受け取られる、指定された回転レベルに基づいて所望の量の画像回転を行うことができる。]
[0029] 図2は、画像を回転させるために使用され得る構成要素を示すブロック図である。図2に示すように、カメラ22Aが画像をキャプチャし、JPEG規格に従って画像を符号化するJPEGエンコーダ26Aに、カメラ22Aの読み出し情報24Aが供給される。メモリ28Aは、画像の符号化されたJPEGファイル30Aを記憶する。次いで、JPEGデコーダ32AがJPEGファイルを復号し、復号されたファイル34Aをメモリ28Aに記憶する。回転およびコピーユニット36Aは、メモリ28Aに記憶される、復号ファイルの回転バージョン38Aを生成するために、復号ファイル34Aに対して回転およびコピー演算を行う。次いで、JPEGエンコーダ26Aが復号ファイルの回転バージョン38Aを符号化し、回転された画像の符号化されたJPEGファイル40Aをメモリ28Aに書き込む。] 図2
[0030] 図2の構成要素によって実行されるプロセスに従って、画像がJPEG符号化され、復号され、回転され、次いで再符号化される。残念なことに、図2の構成要素によって実行されるプロセスは、非常にメモリ集約的(memory intensive)である。特に、メモリ28AはJPEGファイル30Aおよび画像の2つの復号バージョン34Aおよび38Aを記憶する必要がある。さらに、メモリ28AはJPEGファイル40Aをも記憶する。さらに、複数の符号化ステップおよび復号ステップは、画像を回転させるプロセスに望ましくない待ち時間を追加するかもしれない。本開示の技術は、図2の構成要素によって実行されるプロセスによる画像回転に関連するそのようなメモリ要件を低減することができ、画像の非圧縮復号バージョンを画素形式で記憶する必要をなくすことができる。] 図2
[0031] 図3は、画像を回転させるために使用され得る構成要素を示す別のブロック図である。図3に示すように、カメラ22Bが画像をキャプチャし、ファイル34Bに対してJPEG符号化を行うことなしに、カメラ22Bの読み出し情報24Bをメモリ28Bに供給する。回転およびコピーユニット36Bは、メモリ28Bに記憶される、ファイルの回転バージョン38Bを生成するために、ファイル34Bに対して回転およびコピー操作を行う。次いで、JPEGエンコーダ26Bが復号ファイルの回転バージョン38Bを符号化し、回転された画像の符号化されたJPEGファイル40Bをメモリ28Bに記憶する。] 図3
[0032] 図3の構成要素によって実行されるプロセスは、図2の構成要素によって実行されるプロセスよりもメモリ集約的でなく、計算集約的(computationally intensive)でない。特に、図3の構成要素によって実行されるプロセスでは、図2の構成要素によって実行されるプロセスに対して、1つのJPEG符号化ステップ26Bおよび1つのJPEG復号ステップ32Bが取り除かれている。さらに、JPEGファイル30Bをメモリ28Bに記憶する必要はない。図2に対して取り除かれた図3のユニットは、点線で、まとめて要素50と示されている。それにもかかわらず、図3の構成要素によって実行されるプロセスはまだ非常にメモリ集約的であり、画像ファイルの非圧縮バージョン34Bおよび38Bの記憶を必要とする。本開示の技術は、図2および図3に示すそれぞれの構成要素によって実行されるプロセスに対して、画像回転に関連するメモリ要件を低減することができる。] 図2 図3
[0033] 図4は、本開示による、画像を回転させるために使用できる構成要素を示すブロック図である。図3に示すように、カメラ22Cが画像をキャプチャし、カメラ22Cの読み出し情報24CがJPEGエンコーダ26Cに供給される。図示のように、JPEGエンコーダ26Cはリスタートマーカ間隔1を適用する。リスタートマーカ値を1に設定することによって、符号化されたJPEGファイル30C中の各MCUは、別々に復号可能な単位になる。この場合、エントロピー符号化は所定のMCUにしか適用することができず、各MCU自体が独立して復号可能なので、MCU間に展開することができない。符号化されたJPEGファイル30Cは、メモリ28Cに記憶される。] 図3 図4
[0034] 本開示によれば、回転トランスコーダ60CはJPEGファイル30Cに対して回転トランスコーディングを行う。特に、回転トランスコーダ60CはJPEGファイル30CのMCUを並べ替える。次いで、回転トランスコーダ60CはMCU内の画像データを回転させる。回転トランスコーダ60CによるMCUの並べ替えおよびMCU内の画像データの回転は、メモリ28Cに出力され、回転された画像のJPEGファイル40Cとしてメモリに記憶され得る、符号化画像の回転バージョンを生成する。]
[0035] 回転トランスコーダ60Cは、メモリ28Cから符号化されたJPEGファイル30Cをフェッチすることができ、符号化画像は1つまたは複数のエントロピー符号化技術によって符号化される。回転トランスコーダ60Cは、MCUを並べ替えおよび処理するより前に符号化画像をエントロピー復号してMCUを生成し、符号化画像の回転バージョンを出力するよりも前に1つまたは複数のエントロピー符号化技術に従って符号化画像の回転バージョンをエントロピー符号化することができる。このようにして、回転トランスコーダ60Cは符号化画像の部分復号を行ってエントロピー符号化をなくすることができるが、符号化画像のDCT符号化された情報を十分には復号しない。代わりに、回転トランスコーダ60Cは符号化画像を実質的にDCT領域において回転させ、次いで回転された画像にエントロピー符号化を再適用する。場合によっては、DCT係数の低周波(DC)成分に対して差分符号化を使用した場合、回転トランスコーダ60Cはそのような差分符号化をなくするようにDCT係数のDC成分を復号する。ただし、この場合にはDCT係数のAC成分がDCT領域に残ることがある。]
[0036] 図4の構成要素によって実行されるプロセスは、図2および図3の構成要素によって実行されるプロセスよりもはるかにメモリ集約的でない。図4の構成要素によって実行されるプロセスでは、画像の復号バージョン34Cおよび38Cをメモリ28Cに記憶する必要をなくすことができ、回転およびコピーユニット36Cの代わりに回転トランスコーダ60Cを使用する。JPEGエンコーダ26C’に関連する追加のステップをも、取り除くことができる。図2のユニットに対して取り除かれた図4のユニットは、点線でまとめて要素52と示されている。] 図2 図3 図4
[0037] 図5は、本開示による画像を回転させるプロセスを示す別のブロック図である。図5に示すように、カメラ22Dが画像をキャプチャし、カメラ22Dの読み出し情報24DがJPEGエンコーダ26Dに供給される。図4と同様に、図5のJPEGエンコーダ26Dはリスタートマーカ間隔1を適用する。同じく、リスタートマーカ値を1に設定することによって、符号化されたJPEGファイル30D中の各MCUは、別々に復号可能な単位である。符号化されたJPEGファイル30Dは、メモリ28Dに記憶される。図5では、JPEGエンコーダ26Dはファイルサイズ制御パラメータを生成し、これらのファイルサイズ制御パラメータを回転トランスコーダ60Dによって適用するために転送する。ファイルサイズ制御パラメータは、符号化されたJPEGファイルのサイズを制限するために使用できる1つまたは複数のパラメータを含み得る。そのようなパラメータは、データを圧縮するためにDCT係数の高周波AC成分の低減または除去をもたらすことができる。概して、本明細書で説明する画像回転プロセスは、ファイルサイズ制御パラメータまたは他のタイプのパラメータの適用など、いくつかの追加の符号化ステップを実行する機会を与え得る。] 図4 図5
[0038] 回転トランスコーダ60Dは、JPEGファイル30Dに対して回転トランスコーディングを行う。さらに、図5の例ではJPEGファイル(ファイル40D)の回転バージョンがサイズ制限および/またはサイズ制約付きで符号化されるように、回転トランスコーダ60Dはファイルサイズ制御パラメータを適用する。この場合も、回転トランスコーディングにおいて回転トランスコーダ60DはJPEGファイル30DのMCUを並べ替え、MCU内の画像データを回転させる。例えば、MCU内で画像データのMCUおよび回転を並べ替えることは、ユーザ入力として受け取るかまたはカメラ22Dの向きに基づいて自動的に生成される指定された回転レベルに基づくことができる。回転トランスコーディング中に、符号化されたJPEGファイル40Dが指定されたサイズ制限内に入るように、回転トランスコーダ60Dによってファイルサイズパラメータを適用することができる。この場合も、そのようなパラメータはパラメータによって指定されたファイルサイズ制約未満にデータを圧縮するために、回転トランスコーダ60DにDCT係数の1つまたは複数の高周波AC成分を低減させるか、またはなくさせることができる。符号化画像の回転バージョンはメモリ28Dに出力され、サイズ制限付きの回転された画像のJPEGファイル40Dとしてメモリに記憶される。] 図5
[0039] 上述のように、回転トランスコーダ60Dはメモリ28Dから符号化されたJPEGファイル30Dをフェッチすることができ、符号化画像は1つまたは複数のエントロピー符号化技術によって符号化される。回転トランスコーダ60Dは、MCUを並べ替えるよりも前に符号化画像をエントロピー復号してMCUを生成するエントロピー復号構成要素を含むことができる。さらに、回転トランスコーダ60Dは例えば符号化画像の回転バージョンを出力するよりも前に、1つまたは複数のエントロピー符号化技術に従って符号化画像の回転バージョンをエントロピー符号化するエントロピー符号化構成要素を含むことができる。このようにして、回転トランスコーダ60Dは符号化画像の部分復号を行ってエントロピー符号化をなくすることはできるが、符号化画像のDCTについて復号しない。代わりに、回転トランスコーダ60Dは符号化画像を実質的にDCT領域において回転させ、次いで回転された画像にエントロピー符号化を再適用する。ただし、場合によってはDCT係数の低周波(DC)係数に対して差分符号化を使用した場合、回転トランスコーダ60Dはそのような差分符号化をなくすることができるようにDC係数を復号する。この場合は、DCT係数の高周波(AC)係数がDCT領域に残ることがある。]
[0040] ファイルサイズパラメータの適用は、MCU内でいわゆる高周波DCT係数値を低減すること、またはなくすることができる。MCU全体の平均強度を表す低周波「DC」値に対比して、高周波値をAC値と呼ぶこともある。図5によれば、回転トランスコーダ60Dは画像を回転させるだけでなく、ファイルサイズパラメータによって定められたサイズ制限を有するJPEGファイル40Dを生成するために、ファイルサイズパラメータを適用するためにも使用できる。概して、本明細書で説明する画像回転プロセスは、最初のJPEG符号化パスの後の第2の符号化パスを介してファイルサイズ制御パラメータまたは従来適用できる他のタイプのパラメータの適用など、いくつかの追加の符号化ステップを実行する機会を与えることができる。] 図5
[0041] 図4の構成要素によって実行されるプロセスと同様に、図5の構成要素によって実行されるプロセスは、図2および図3の構成要素によって実行されるプロセスよりもはるかにメモリ集約的でない。図5の構成要素によって実行されるプロセスでは、画像の復号バージョン34Dおよび38Dをメモリ28Dに記憶する必要を回避でき、回転およびコピーユニット36Dの代わりに回転トランスコーダ60Dを使用することができる。JPEGエンコーダ26D’に関連する追加のステップをも、取り除くことができる。図2の構成要素に対して取り除かれた図5の構成要素は点線でまとめて要素54と示されている。] 図2 図3 図4 図5
[0042] 図6は、本開示に合致する技術を示すフローチャートである。図6については、図1のデバイス2の観点から説明する。図6に示すように、デバイス2の回転トランスコーダ18は、符号化されたファイルに関連する画像データを部分復号してMCUを生成する(61)。一例として、符号化されたファイルはDCT符号化およびエントロピー符号化の両方を含むJPEGファイルを含み得る。部分復号プロセス(61)は、エントロピー復号を含むことができるが、DCT係数を画素領域に十分には復号しない。] 図1 図6
[0043] 回転トランスコーダ18は、MCUを並べ替える(62)。例えば、MCUが元の符号化画像に対して回転された形で提示されるように、MCUを並べ替える。次に、回転トランスコーダ18は各MCU内の画像データを回転させるために、各MCU内の画像データを処理する(63)。従って、回転トランスコーダは最初にMCUを並べ替え(62)、次いでMCUの各々内の画像データを回転させる(63)。ステップ(62)および(63)の結果として、画像の回転バージョンが生成される。すなわち、回転トランスコーダ18は並べ替えられたMCUとMCU内の回転された画像データとを含む画像の回転バージョンを生成する(64)。ただし、ステップ(62)および(63)は、いくつかの実施形態では逆にすることができる。]
[0044] 並べ替えられたMCUとMCU内の回転された画像データとを含む画像の回転バージョンを生成(64)した後、回転トランスコーダ18はMCUを再符号化する(65)。このステップ(65)の再符号化プロセスは、ステップ(61)の部分復号プロセスの反対である。従って、ステップ(61)がエントロピー復号を含む例では、ステップ(65)はMCUのエントロピー符号化を含み得る。回転トランスコーダ18は、次いで画像データの回転バージョン、例えば回転されたJPEGファイルをメモリ16に出力する(66)。]
[0045] 図7は、本開示に合致する例示的な回転トランスコーディングプロセスを示す別のフローチャートである。図7については、図1の例示的なデバイス2の観点から説明する。図7に示すように、デバイス2のメモリ16はJPEGエンコーダ14によって符号化された画像80のJPEGビットストリームを最初に記憶することができる。回転トランスコーダ18は、JPEGビットストリームのMCUをインデキシングするためにリスタート(RST)マーカを使用する(71)。特に、リスタートマーカ値1を選択することによって、各MCUは別々に復号可能な単位を含み得る。画像82は、リスタートマーカ1でMCUに分離された画像の例を示す。] 図1 図7
[0046] 次に、回転トランスコーダ18はMCUビットストリームを回転順にフェッチする(72)。これはMCUを並べ替える。例えば、画像84に示すようにMCUは画像82のMCUに対してMCUの回転を生じる順序でフェッチできる。例えば、90度回転させる場合、最初にフェッチされたMCUは画像84の左下角のMCUであり、最後にフェッチされたMCUは画像84の右上角のMCUであり得る。MCUは、画像84に示される矢印が示す順序でフェッチできる。]
[0047] 回転トランスコーダ18は、各MCUについてハフマン復号および逆ジグザグ走査を行う(73)。このハフマン復号および逆ジグザグ走査のプロセスは、本明細書ではエントロピー復号とも呼ばれる。次に、回転トランスコーダ18は各MCUのDC係数のみを復号することができ、各MCUにDC差分復号を適用することができる(74)。ステップ74のDC差分復号は、DCT係数のDC係数に適用された差分符号化をなくすることができる。そのためには各MCUのDC係数の少なくとも部分復号が必要であるが、この場合にはAC係数がDCT領域に符号化されたまま残る。]
[0048] 回転トランスコーダ18は、量子化されたDCT係数を回転させる(75)。画像84に示すMCUのフェッチの例では、この回転を90度の回転とすることができる。ただし、180度の回転または270度の回転を行うこともできる。MCUに適用できる90度、180度または270度の回転のための例示的な行列変換式は、図7のステップ(75)の隣に記載されている。特に、90度の回転は次の式を適用することによって達成できる。] 図7
[0049] 180度の回転は、次の式を適用することによって達成できる。]
[0050] 270度の回転は、次の式を適用することによって達成できる。]
[0051] MCUの係数が回転されると、回転トランスコーダ18はMCUのジグザグ走査およびハフマン符号化を行う(76)。このジグザグ走査およびハフマン符号化のプロセスは、本明細書ではエントロピー符号化と呼ぶことがある。回転トランスコーダ18は、回転された画像86のJPEGビットストリームをメモリ16に出力することができる。]
[0052] (MCU並べ替えの後に)MCUの各々のDCT係数を回転させるために、回転トランスコーダ18は以下のうちの1つまたは複数の計算を行うことができる。例えば、以下とする。]
[0053] ここで、CはDCTカーネルであり、xは画素値の行列を表し、XはDCT値の行列を表す。Cおよびxの例を以下に示す。]
[0054] 画素行列(x)が画素領域において転置される場合、対応するDCT行列(X)は以下の演算によって転置される。]
[0055] 空間領域の垂直反転演算は、次のように与えられる。]
[0056] ここで、]
[0057] はMCUの元の画素値行列を表し、]
[0058] は垂直反転された行列を表す。]
[0059] DCT領域における垂直反転演算の等価演算は、以下によって与えられる。]
[0060] 同様に、DCT領域における水平反転演算の演算は、以下によって与えられる。]
[0061] 空間領域では、90度の時計回りの回転は2つの演算、すなわち垂直反転演算とその後の転置演算に分割できる。転置演算は行列演算Tを指し、任意の行列Aは特性(AT)T=Aを有する。DCT領域における90度回転のDCT演算は、垂直反転およびその後の転置の組合せで与えることができ、以下によって集合的に表すことができる。]
[0062] 180度時計回りの回転も、垂直反転および水平反転の2つの演算に分割できる。従って、DCT領域における180度回転のDCT演算は、以下によって与えられる。]
[0063] 270度時計回りの回転も、転置およびその後の垂直反転の2つの演算に分割できる。従って、DCT領域における270度回転のDCT演算は、以下によって与えられる。]
[0064] DCT領域における画像回転については、場合によってはDCT量子化演算およびジグザグ走査演算に埋め込むこと、またはそれらと組み合わせることができる。所望の回転に基づいて、上記の式によって示すように、量子化パラメータの符号はそれに応じて変化することがある。同様に、転置演算が必要な場合、転置演算はDCT変換演算と組み合わせること、または回転トランスコーディング中に適用されるジグザグ走査テーブルに統合することができる。従って、回転トランスコーダ18によって実行される回転演算は、個別の演算として適用する必要がなく、本明細書で論じるエントロピー復号ステップまたはエントロピー符号化ステップと組み合わせることができる。]
[0065] 図8は、MCUに従ってインデキシングされた画像を示す概念図である。特に、JPEGファイルのリスタートマーカ値を1に割り当てることによって、JPEGファイルの各MCUは別々に復号可能な単位を含み得る。これは各MCU内でエントロピー符号化を行う必要があり、エントロピー符号化がMCU間に展開しないことを意味する。さらに、図8に示すように各MCUはラスタの順序で自動的にインデキシングできる。このインデキシングが実行されると、回転トランスコーダ18(図1)は指定された回転に従ってメモリ16からMCUをフェッチすることができる。例えば、90度回転させる場合、回転トランスコーダ18は図7に示すインデックス番号(85,73,61,49,37,25,13,1,86,74,62,など)に従って、この順序でMCUをフェッチすることができる。180度回転させる場合、回転トランスコーダ18はMCUを逆の順序(96,95,94,93,92,91,90,89,88,87,86,85,84,83,など)でフェッチすることができる。270度回転させる場合、回転トランスコーダ18は図7に示すインデックス番号(12,24,36,48,60,72,84,96,11,23,35,など)に従って、以下の順序でMCUをフェッチすることができる。このようにして、インデキシングはメモリフェッチが画像回転を可能にする形でデータを処理できるようにする。所定のMCUをフェッチすると、次いで本明細書で対処するように、そのMCU内のデータが回転される。並び替え、および並べ替えされたMCU内のデータの回転は、例えばMCUを画素領域に十分に復号する必要なしに、集合的に(collectively)画像の回転バージョンを生成する。] 図1 図7 図8
[0066] 図9は、本開示に合致する、画像を回転させる技術を示す別のフローチャートである。図9については、図1のデバイス2の観点から説明する。図9に示すように、デバイス2の回転トランスコーダ18は符号化されたファイルに関連する画像データを部分復号してMCUを生成する(91)。一例として、符号化されたファイルはDCT符号化およびエントロピー符号化の両方を含むJPEGファイルを含み得る。部分復号プロセス(91)はエントロピー復号を含み得るが、DCT係数を画素領域に十分には復号しない。前述のように、場合によっては差分符号化を除去するために低周波DC係数を復号することができるが、高周波AC係数はDCT領域に残る。] 図1 図9
[0067] 回転トランスコーダ18は、MCUを並べ替える(92)。例えば、MCUが元の符号化画像に対して回転された形で提示されるように、MCUを並べ替える。次に、回転トランスコーダ18はファイルサイズパラメータを適用して、MCUの各々内の画像データを回転させるために、MCUの各々内の画像データを処理する(93)。従って、回転トランスコーダは最初にMCUを並べ替え(92)、次いでMCUの各々内の画像データを回転させる(93)。ステップ(92)および(93)の結果として、ファイルサイズ制約に適合する画像の回転バージョンが生成される。すなわち、回転トランスコーダ18は並べ替えられたMCUとMCU内の回転された(場合によっては、さらに圧縮された)画像データとを含む画像の回転バージョンを生成する(94)。回転された画像データは、ファイルサイズ制約に基づいて圧縮され得る。例えば、ファイルサイズパラメータはファイルサイズ制限を指定することができ、回転トランスコーダ18は回転された画像がファイルサイズ制約を超えないように、(例えば、高周波DCT成分に関連する値を低減するか、またはなくすことによって)データを圧縮することができる。ステップ(92)および(93)は、いくつかの実施形態では逆にすることができる。]
[0068] 並べ替えられたMCUとMCU内の回転された(場合によっては、さらに圧縮された)画像データとを含む画像の回転バージョンを生成(94)した後、回転トランスコーダ18はMCUを再符号化する(95)。このステップ(95)の再符号化プロセスは、ステップ(91)の部分復号プロセスの反対である。従って、ステップ(91)がエントロピー復号を含む例では、ステップ(95)はMCUのエントロピー符号化を含み得る。回転トランスコーダ18は、次いで画像データの回転バージョン、例えば回転されたJPEGファイルをメモリ16に出力する(96)。]
[0069] 本明細書で説明する技術は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの組合せで実装され得る。説明したユニット、モジュールまたは構成要素(component)は、いずれも集積論理デバイス中で一緒に実装され得、または個別であるが相互運用可能な論理デバイスとして別々に実装され得る。ソフトウェアで実装した場合、これらの技術は実行されると上記で説明した技術の1つまたは複数を実行する命令を備えるコンピュータ可読媒体によって少なくとも部分的に実現され得る。コンピュータ可読媒体は、パッケージング材料を含む、コンピュータプログラム製品の一部をなすことができる。コンピュータ可読媒体は、同期ダイナミックランダムアクセスメモリ(SDRAM)などのランダムアクセスメモリ(RAM)、読取り専用メモリ(ROM)、不揮発性ランダムアクセスメモリ(NVRAM)、電気消去可能プログラマブル読み出し専用メモリ(EEPROM)、FLASHメモリ、磁気または光学データ記憶媒体などを備えることができる。本技術は、追加または代替として、命令またはデータ構造を搬送または伝達し、コンピュータによってアクセス、読み取りおよび/または実行できるコンピュータ可読通信媒体によって、少なくとも部分的に実現され得る。]
[0070] 命令は、1つまたは複数のデジタル信号プロセッサ(DSP)など1つまたは複数のプロセッサ、汎用マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルロジックアレイ(FPGA)、または他の等価な集積または個別論理回路によって実行され得る。従って、本明細書で使用する「プロセッサ」という用語は、前述の構造、または本明細書で説明する技術の実装に好適な他の構造のいずれかを指す。さらに、いくつかの態様では、本明細書で説明した機能を専用のソフトウェアモジュール、ハードウェアモジュール、またはそれらの任意の組合せで提供することができる。]
[0071] ハードウェアまたはハードウェアとソフトウェアとの組合せで実装した場合、本明細書で説明する技術は、図1に示す回転トランスコーダ18、または場合によっては図1に示す構成要素の組合せを備える装置(apparatus)、デバイスまたは集積回路で実施され得る。集積回路は、例えば本明細書で説明する技術の1つまたは複数を行うように構成され得る。その場合、集積回路は符号化画像のMCUを並べ替え、並べ替えられたMCUを処理してMCU内の画像データを回転させ、符号化画像の回転バージョンを生成し、さらに符号化画像の回転バージョンを出力するように構成され得る。] 図1
[0072] これらおよび他の例は、以下の特許請求の範囲内にある。]
权利要求:

請求項1
符号化画像の指定された回転に従って前記符号化画像の最小符号化単位(MCU)を並べ替えることと、前記指定された回転に従って前記MCU内の画像データを回転させることと、前記並べ替えられたMCUと前記MCU内の前記回転された画像データとを含む、前記符号化画像の回転バージョンを生成することと、を具備する符号化画像を回転させる方法。
請求項2
前記MCUは、Joint Photographic Experts Group(JPEG)規格に従って符号化された離散コサイン変換(DCT)係数のブロックを含む請求項1に記載の方法。
請求項3
1つまたは複数のエントロピー符号化技術によって符号化された前記符号化画像をフェッチすることと、前記MCUを並べ替えかつ前記MCU内の前記画像データを回転させるよりも前に前記符号化画像をエントロピー復号して前記MCUを生成することと、前記1つまたは複数のエントロピー符号化技術に従って前記符号化画像の前記回転バージョンをエントロピー符号化することと、をさらに具備する請求項1に記載の方法。
請求項4
画像をキャプチャすることと、前記キャプチャされた画像に基づいて前記符号化画像を生成することと、をさらに具備する請求項1に記載の方法。
請求項5
前記MCUを処理することは、ファイルサイズ制御パラメータを適用することを含み、前記符号化画像の前記回転バージョンが前記ファイルサイズ制御パラメータに適合する請求項1に記載の方法。
請求項6
前記MCUを並べ替えることは、前記符号化画像にリスタートマーカ値1を割り当てることと、前記リスタートマーカ値に基づいて前記MCUをインデキシングすることと、前記インデキシングに基づいて前記MCUを並べ替えることと、を含む請求項1に記載の方法。
請求項7
前記MCU内の前記画像データを回転させることは、前記MCUの係数値に対して垂直反転演算を行うことと、前記MCUの前記垂直反転された係数値に対して転置演算を行うことと、を含む請求項1に記載の方法。
請求項8
前記MCU内の前記画像データを回転させることは、前記MCUの係数値に対して垂直反転演算を行うことと、前記MCUの前記垂直反転された係数値に対して水平反転演算を行うことと、を含む請求項1に記載の方法。
請求項9
前記MCU内の前記画像データを回転させることは、前記MCUの係数値に対して水平反転演算を行うことと、前記MCUの前記水平反転された係数値に対して垂直反転演算を行うことと、を含む請求項1に記載の方法。
請求項10
前記MCU内の前記画像データを回転させることは、前記MCUの係数値に対して転置演算を行うことと、前記MCUの前記転置された係数値に対して垂直反転演算を行うことと、を含む請求項1に記載の方法。
請求項11
符号化画像を記憶するメモリと、前記メモリから前記符号化画像を受け取り、前記符号化画像の指定された回転に従って前記符号化画像の最小符号化単位(MCU)を並べ替え、前記指定された回転に従って前記MCU内の画像データを回転させ、前記並べ替えられたMCUと前記MCU内の前記回転された画像データとを含む前記符号化画像の回転バージョンを生成する回転トランスコーダと、を具備する装置。
請求項12
前記MCUは、Joint Photographic Experts Group(JPEG)規格に従って符号化された離散コサイン変換(DCT)係数のブロックを含む請求項11に記載の装置。
請求項13
前記回転トランスコーダは、さらに前記メモリから1つまたは複数のエントロピー符号化技術によって符号化され前記符号化画像をフェッチし、前記MCUを並べ替え、前記MCU内の前記画像データを回転させるよりも前に前記符号化画像をエントロピー復号して前記MCUを生成し、前記1つまたは複数のエントロピー符号化技術に従って前記符号化画像の前記回転バージョンをエントロピー符号化する請求項11に記載の装置。
請求項14
画像をキャプチャするカメラと、前記キャプチャされた画像に基づいて前記符号化画像を生成するエンコーダと、をさらに具備する請求項11に記載の装置。
請求項15
前記回転トランスコーダは、ファイルサイズ制御パラメータを適用し、前記符号化画像の前記回転バージョンが前記ファイルサイズ制御パラメータに適合する請求項11に記載の装置。
請求項16
前記回転トランスコーダは、前記符号化画像にリスタートマーカ値1を割り当て、前記リスタートマーカ値に基づいて前記MCUをインデキシングし、前記インデキシングに基づいて前記MCUを並べ替える請求項11に記載の装置。
請求項17
前記回転トランスコーダは、前記MCUの係数値に対して垂直反転演算を行い、前記MCUの前記垂直反転された係数値に対して転置演算を行う請求項11に記載の装置。
請求項18
前記回転トランスコーダは、前記MCUの係数値に対して垂直反転演算を行い、前記MCUの前記垂直反転された係数値に対して水平反転演算を行う請求項11に記載の装置。
請求項19
前記回転トランスコーダは、前記MCUの係数値に対して水平反転演算を行い、前記MCUの前記水平反転された係数値に対して垂直反転演算を行う請求項11に記載の装置。
請求項20
前記回転トランスコーダは、前記MCUの係数値に対して転置演算を行い、前記MCUの前記転置された係数値に対して垂直反転演算を行う請求項11に記載の装置。
請求項21
無線ハンドセットを具備する請求項11に記載の装置。
請求項22
集積回路を具備する請求項11に記載の装置。
請求項23
実行時にプロセッサに、符号化画像の指定された回転に従って前記符号化画像の最小符号化単位(MCU)を並べ替えることと、前記指定された回転に従って前記MCU内の画像データを回転させることと、前記並べ替えられたMCUと前記MCU内の前記回転された画像データとを含む前記符号化画像の回転バージョンを生成することと、を行わせる命令を具備するコンピュータ可読媒体。
請求項24
前記MCUは、Joint Photographic Experts Group(JPEG)規格に従って符号化された離散コサイン変換(DCT)係数のブロックを含む請求項23に記載のコンピュータ可読媒体。
請求項25
前記プロセッサに、1つまたは複数のエントロピー符号化技術によって符号化された前記符号化画像をフェッチすることと、前記MCUを並べ替え、前記MCU内の前記画像データを回転させるよりも前に前記符号化画像をエントロピー復号して前記MCUを生成することと、前記1つまたは複数のエントロピー符号化技術に従って前記符号化画像の前記回転バージョンをエントロピー符号化することと、を行わせる命令をさらに具備する請求項23に記載のコンピュータ可読媒体。
請求項26
前記プロセッサに、キャプチャされた画像を受け取ることと、前記キャプチャされた画像に基づいて前記符号化画像を生成することと、を行わせる命令をさらに具備する請求項23に記載のコンピュータ可読媒体。
請求項27
前記プロセッサに、ファイルサイズ制御パラメータを適用させる命令をさらに備え、前記符号化画像の前記回転バージョンが前記ファイルサイズ制御パラメータに適合する請求項23に記載のコンピュータ可読媒体。
請求項28
前記プロセッサに、前記符号化画像にリスタートマーカ値1を割り当てることと、前記リスタートマーカ値に基づいて前記MCUをインデキシングすることと、前記インデキシングに基づいて前記MCUを並べ替えることと、を行わせる命令をさらに具備する請求項23に記載のコンピュータ可読媒体。
請求項29
前記プロセッサに、少なくとも以下の演算、すなわち、前記MCUの係数値に対する垂直反転演算と、前記MCUの前記垂直反転された係数値に対する転置演算と、を行うことによって前記MCU内の画像データを回転させる命令をさらに具備する請求項23に記載のコンピュータ可読媒体。
請求項30
前記プロセッサに、少なくとも以下の演算、すなわち、前記MCUの係数値に対する垂直反転演算と、前記MCUの前記垂直反転された係数値に対する水平反転演算と、を行うことによって前記MCU内の画像データを回転させる命令をさらに具備する請求項23に記載のコンピュータ可読媒体。
請求項31
前記プロセッサに、少なくとも以下の演算、すなわち、前記MCUの係数値に対する水平反転演算と、前記MCUの前記水平反転された係数値に対して垂直反転演算と、を行うことによって前記MCU内の画像データを回転させる命令をさらに具備する請求項23に記載のコンピュータ可読媒体。
請求項32
前記プロセッサに、少なくとも以下の演算、すなわち、前記MCUの係数値に対する転置演算と、前記MCUの前記転置された係数値に対する垂直反転演算と、を行うことによって前記MCU内の画像データを回転させることを行わせる命令をさらに具備する請求項23に記載のコンピュータ可読媒体。
請求項33
符号化画像の指定された回転に従って前記符号化画像の最小符号化単位(MCU)を並べ替える手段と、前記指定された回転に従って前記MCU内の画像データを回転させる手段と、前記並べ替えられたMCUと前記MCU内の前記回転された画像データとを含む前記符号化画像の回転バージョンを生成する手段と、を具備するデバイス。
請求項34
前記MCUは、Joint Photographic Experts Group(JPEG)規格に従って符号化された離散コサイン変換(DCT)係数のブロックを含む請求項33に記載のデバイス。
請求項35
1つまたは複数のエントロピー符号化技術によって符号化された前記符号化画像をフェッチする手段と、前記MCUを並べ替え、前記MCU内の前記画像データを回転させるよりも前に前記符号化画像をエントロピー復号して前記MCUを生成する手段と、前記1つまたは複数のエントロピー符号化技術に従って前記符号化画像の前記回転バージョンをエントロピー符号化する手段と、をさらに具備する請求項33に記載のデバイス。
請求項36
画像をキャプチャする手段と、前記キャプチャされた画像に基づいて前記符号化画像を生成する手段と、をさらに具備する請求項33に記載のデバイス。
請求項37
生成する手段は、ファイルサイズ制御パラメータを適用する手段を含み、前記符号化画像の前記回転バージョンが前記ファイルサイズ制御パラメータに適合する請求項33に記載のデバイス。
請求項38
前記MCUを並べ替える手段は、前記符号化画像にリスタートマーカ値1を割り当てる手段と、前記リスタートマーカ値に基づいて前記MCUをインデキシングする手段と、前記インデキシングに基づいて前記MCUを並べ替える手段と、を含む請求項33に記載のデバイス。
請求項39
前記画像データを回転させる手段は、前記MCUの係数値に対して垂直反転演算を行う手段と、前記MCUの前記垂直反転された係数値に対して転置演算を行う手段と、を含む請求項33に記載のデバイス。
請求項40
前記画像データを回転させる手段は、前記MCUの係数値に対して垂直反転演算を行う手段と、前記MCUの前記垂直反転された係数値に対して水平反転演算を行う手段と、を含む請求項33に記載のデバイス。
請求項41
前記画像データを回転させる手段は、前記MCUの係数値に対して水平反転演算を行う手段と、前記MCUの前記水平反転された係数値に対して垂直反転演算を行う手段と、を含む請求項33に記載のデバイス。
請求項42
前記画像データを回転させる手段は、前記MCUの係数値に対して転置演算を行う手段と、前記MCUの前記転置された係数値に対して垂直反転演算を行う手段と、を含む請求項33に記載のデバイス。
請求項43
並べ替える前記手段と、回転させる前記手段と、生成する前記手段とは、共同で回転トランスコーダを備える請求項33に記載のデバイス。
类似技术:
公开号 | 公开日 | 专利标题
US8666184B2|2014-03-04|Variable length coding system
Mantiuk et al.2006|Backward compatible high dynamic range MPEG video compression
EP2204047B1|2018-04-25|Methods and apparatus for artifact removal for bit depth scalability
KR0183688B1|1999-05-01|영상부호화방법 및 장치
EP1803095B1|2019-03-06|A method and apparatus for reading film grain patterns in a raster order in film grain simulation
KR100882417B1|2009-02-05|디지털 데이터를 점진적으로 변환 및 부호화하는 시스템및 방법
JP5204269B2|2013-06-05|ビデオ・コーデック量子化のための方法および装置
ES2623298T3|2017-07-10|Filtrado de vídeo de post-procesamiento controlado por flujo de bits
KR100630983B1|2006-10-09|화상 처리 방법과, 이 방법을 이용가능한 화상 부호화장치 및 화상 복호 장치
US8036517B2|2011-10-11|Parallel decoding of intra-encoded video
KR101168841B1|2012-07-26|크로마 및 루마 비디오 블록들의 인코딩을 위한 양자화 파라미터 선택들
US20150288974A1|2015-10-08|Video acquisition and processing systems
US8467617B2|2013-06-18|Compressing high resolution images in a low resolution video
US10027982B2|2018-07-17|Segmented-block coding
US6847735B2|2005-01-25|Image processing system, image processing apparatus, image input apparatus, image output apparatus and method, and storage medium
US8989263B2|2015-03-24|Inverse quantizer supporting multiple decoding processes
JP5295045B2|2013-09-18|組み込み機器において高解像度画像を提供するための方法及び装置
KR20130116924A|2013-10-24|미디어 데이터 코딩을 위한 32-포인트 변환
US8576907B2|2013-11-05|High precision encoding and decoding of video images
US8576924B2|2013-11-05|Piecewise processing of overlap smoothing and in-loop deblocking
US20110194618A1|2011-08-11|Compatible compression of high dynamic range, visual dynamic range, and wide color gamut video
US7792385B2|2010-09-07|Scratch pad for storing intermediate loop filter data
US7580578B1|2009-08-25|Method and device for forming a compressed transcoded digital image signal
US8699803B2|2014-04-15|Display driving circuit
US7013050B2|2006-03-14|Image encoding apparatus and method, program code, and storage medium
同族专利:
公开号 | 公开日
TW200947351A|2009-11-16|
US8977064B2|2015-03-10|
KR20100112654A|2010-10-19|
WO2009103002A1|2009-08-20|
JP2013138450A|2013-07-11|
CN101911114B|2013-03-27|
CN101911114A|2010-12-08|
US20090202158A1|2009-08-13|
KR20120126135A|2012-11-20|
KR101241243B1|2013-03-14|
EP2091019A1|2009-08-19|
KR101344889B1|2013-12-26|
JP2014239473A|2014-12-18|
引用文献:
公开号 | 申请日 | 公开日 | 申请人 | 专利标题
法律状态:
2011-09-14| A131| Notification of reasons for refusal|Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110913 |
2011-12-14| A601| Written request for extension of time|Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20111213 |
2011-12-21| A602| Written permission of extension of time|Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20111220 |
2012-01-14| A521| Written amendment|Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120113 |
2012-09-26| A02| Decision of refusal|Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120925 |
2013-01-26| A521| Written amendment|Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130125 |
2013-02-06| A911| Transfer to examiner for re-examination before appeal (zenchi)|Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20130205 |
2013-03-14| A761| Written withdrawal of application|Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20130313 |
优先权:
申请号 | 申请日 | 专利标题
[返回顶部]